package com.dingding.facade.special;

import java.util.List;

import com.dingding.common.core.beans.UserTaxiOrdert;
import com.dingding.common.core.beans.special.UserspecialorderT;
import com.dingding.facade.special.trasfer.place.ReqBackstagePlace;
import com.dingding.facade.special.trasfer.place.ResBackstagePlace;
import com.dingding.facade.special.trasfer.route.RouteDto;

public interface ISpecialOrderFacade {

	
	/**
	 * @Description:指派实时订单
	 * @author fengshuonan
	 * @return 
	 * @since 2.4
	 */
	public boolean appointRealOrder(UserspecialorderT userspecialorderT);
	
	/**
	 * @Description:指派实时订单(TCP推送)
	 * @author fengshuonan
	 * @return 
	 * @since 2.4
	 */
	public boolean appointTcpRealOrder(UserspecialorderT userspecialorderT);
	
	/**
	 * @Description:指派非实时订单
	 * @author fengshuonan
	 * @since 2.4
	 */
	public boolean appointUnRealOrder(UserspecialorderT userspecialorderT);
	
	/**
	 * @Description:指派非实时订单(TCP推送)
	 * @author fengshuonan
	 * @since 2.4
	 */
	public boolean appointTcpUnRealOrder(UserspecialorderT userspecialorderT);

	/**
	 * @Description:后台下专车单
	 * @author fengshuonan
	 * @since 2.4
	 */
	public ResBackstagePlace placeSpecialOrderBackstage(ReqBackstagePlace reqBackstagePlace);
	
	/**
	 * @Description:获取旅游路线的列表
	 * @author fengshuonan
	 * @since 2.4
	 */
	public List<RouteDto> getRoutes(String depId);

	/**
	 * @Description 指派出租车订单
	 * @author fengshuonan
	 * @return boolean
	 */
	boolean appointTaxiOrder(UserTaxiOrdert taxiOrdert);
	
	/**
	 * @Description 指派出租车订单(TCP推送)
	 * @author fengshuonan
	 * @return boolean
	 */
	boolean appointTcpTaxiOrder(UserTaxiOrdert taxiOrdert);
	
}
